package com.agua.enturno.servicios;

import com.agua.enturno.excepciones.ExcepcionDeReglaDelNegocio;
import com.agua.enturno.modelo.turno.EstadoDeTurno;
import com.agua.enturno.vista.dto.HorarioDTO;
import com.agua.enturno.vista.dto.HorarioFullDTO;
import com.agua.enturno.vista.dto.TurnoDTO;

import java.util.List;

public interface HorarioService {

	HorarioDTO findById(Long id);
	
	HorarioFullDTO findFullById(Long id);
	
	TurnoDTO sacarTurno(Long horarioId, Long clienteId) throws ExcepcionDeReglaDelNegocio;
	
	List<TurnoDTO> findTurnos(Long horarioId);

	void deshabilitarHorario(Long horarioId, String motivo);

	EstadoDeTurno habilitarHorario(Long horarioId);

}
